#include <iostream>
#include <string>
#include <vector>
#include "Room.h"
#include "Item.h"
#include "Player.h"
#include "Monster.h"

#define cout std::cout
#define endl std::endl
#define string std::string
#define vector std::vector
#define cin std::cin

void initializeRooms();


void initializeRooms()
{
   // vector<Room> *roomList = new vector<Room>;
    /*
    ignore first line
    for line in file
    makeRoom()
    */
    //Room *asd = new Room();
    //roomList->push_back(*asd);
    //vector<Room> a;
    //string* y;
    //string* z;
    //Room* x = new Room("prison", a,y,z);
}
void createRoom(string line)
{
    /*
   // Room(std::string name, std::vector<Room> connectingRooms, std::vector<ActionableObject> actionableObjects,
   //           std::string* monstersInRoom, std::string* itemsInRoom)
    listOfContainers* = new vector<myVector>;
    listOfContainers.push_back(new std::vector<Room>)
    y = separate by ';'
        for each element in y
            currentContainer = listOfContainers
            if ':' in element
                x = separate by ':'
                for each element in x
                    if x contains '('

                    add it to currentContainer

            else

    */
    vector<void*> vect;
    vect.push_back((void*)new vector<Room>);
    vector<Room*>* asd = static_cast< vector<Room*>* >(vect[0]);

}
/*


string.compare returns FALSE if it compares fully!!!
Room(std::string name, std::vector<Room> connectingRooms, std::string* monstersInRoom, std::string* itemsInRoom)
*/

//template <class T>
//class vector <T> myVector
//{
//    vector<T> data;
//};

int main()
{
    //myVector<Room> list;
    //vector<vector<void*> > listOfContainers;
    cout << "Welcome! What is your name?" << endl;
    string name;
    cin >> name;
    cout << "Welcome to Dungeon Crawler v1.0, " << name << ", made with C++! This is my first attempt at a proper C++ project, so bear with me as you go along the game!" <<
         "As you go through this game you will have choices. Please select your choice by entering the number of the choice you wish to select." << "Good luck and have fun!" << endl;
    cout << "You wake up in a cold, damp dungeon room. To your front is a rusted prison door. You get up, and push at the door, which creaks open." <<
         "You can make out a skeleton in a corner, in the shadows, lying on the floor. There are also some stairs which spiral upwards. What do you want to do?" << endl;
    cout << "1 Examine the skeleton." << "2 Go up the stairs." << endl;
    string choice;
    cin >> choice;
    if(choice.compare("1"))
    {

    }
    else
    {

    }
    return 0;
}
